home *** CD-ROM | disk | FTP | other *** search
- //----------------------------------------------------------------------------
- // TypInfo.hpp - bcbdcc32 generated hdr (DO NOT EDIT) rev: 0
- // From: TypInfo.pas
- //----------------------------------------------------------------------------
- #ifndef TypInfoHPP
- #define TypInfoHPP
- //----------------------------------------------------------------------------
- #include <SysUtils.hpp>
- #include <System.hpp>
- #pragma warn -par
- #pragma warn -hid
- #pragma warn -inl
-
- namespace Typinfo
- {
- //-- type declarations -------------------------------------------------------
- enum TTypeKind { tkUnknown, tkInteger, tkChar, tkEnumeration, tkFloat, tkString, tkSet, tkClass, tkMethod,
- tkWChar, tkLString, tkLWString, tkVariant };
-
- typedef Set<TTypeKind, tkUnknown, tkVariant> TTypeKinds;
-
- enum TOrdType { otSByte, otUByte, otSWord, otUWord, otSLong };
-
- enum TFloatType { ftSingle, ftDouble, ftExtended, ftComp, ftCurr };
-
- enum TMethodKind { mkProcedure, mkFunction };
-
- enum TypInfo_1 { pfVar, pfConst, pfArray, pfAddress, pfReference };
-
- typedef Set<TypInfo_1, pfVar, pfReference> TParamFlags;
-
- struct TTypeInfo;
- typedef TTypeInfo *PTypeInfo;
-
- #pragma pack(push, 1)
- struct TTypeInfo
- {
- TTypeKind Kind;
- System::ShortString Name;
- } ;
- #pragma pack(pop)
-
- struct TTypeData;
- typedef TTypeData *PTypeData;
-
- #pragma pack(push, 1)
- struct TTypeData
- {
-
- union
- {
- struct
- {
- TMethodKind MethodKind;
- Byte ParamCount;
- char ParamList[1024];
-
- };
- struct
- {
- System::TMetaClass*ClassType;
- TTypeInfo *ParentInfo;
- short PropCount;
- System::DummyShortString UnitName;
-
- };
- Byte MaxLength;
- TFloatType FloatType;
- TOrdType OrdType;
- union
- {
- TTypeInfo *CompType;
- struct
- {
- long MinValue;
- long MaxValue;
- union
- {
- struct
- {
- TTypeInfo *BaseType;
- System::DummyShortString NameList;
-
- };
-
- };
- };
-
- };
- };
- } ;
- #pragma pack(pop)
-
- #pragma pack(push, 1)
- struct TypInfo_2
- {
-
- } ;
- #pragma pack(pop)
-
- #pragma pack(push, 1)
- struct TPropData
- {
- Word PropCount;
- TypInfo_2 PropList;
- } ;
- #pragma pack(pop)
-
- struct TPropInfo;
- typedef TPropInfo *PPropInfo;
-
- #pragma pack(push, 1)
- struct TPropInfo
- {
- TTypeInfo *PropType;
- void *GetProc;
- void *SetProc;
- void *StoredProc;
- int Index;
- long Default;
- short NameIndex;
- System::ShortString Name;
- } ;
- #pragma pack(pop)
-
- typedef void __fastcall (__closure *TPropInfoProc)(PPropInfo PropInfo);
-
- typedef TPropInfo *TPropList[16380];
-
- typedef TPropList *PPropList;
-
- //-- var, const, procedure ---------------------------------------------------
- #define tkAny 0x1FFF
- #define tkMethods 0x1
- #define tkProperties 0x1EFE
- extern PTypeData __fastcall GetTypeData(PTypeInfo TypeInfo);
- extern System::AnsiString __fastcall GetEnumName(PTypeInfo TypeInfo, int Value);
- extern int __fastcall GetEnumValue(PTypeInfo TypeInfo, const System::AnsiString Name);
- extern PPropInfo __fastcall GetPropInfo(PTypeInfo TypeInfo, const System::AnsiString PropName);
- extern void __fastcall GetPropInfos(PTypeInfo TypeInfo, PPropList PropList);
- extern int __fastcall GetPropList(PTypeInfo TypeInfo, TTypeKinds TypeKinds, PPropList PropList);
- extern bool __fastcall IsStoredProp(System::TObject* Instance, PPropInfo PropInfo);
- extern long __fastcall GetOrdProp(System::TObject* Instance, PPropInfo PropInfo);
- extern void __fastcall SetOrdProp(System::TObject* Instance, PPropInfo PropInfo, long Value);
- extern System::AnsiString __fastcall GetStrProp(System::TObject* Instance, PPropInfo PropInfo);
- extern void __fastcall SetStrProp(System::TObject* Instance, PPropInfo PropInfo, const System::AnsiString
- Value);
- extern Extended __fastcall GetFloatProp(System::TObject* Instance, PPropInfo PropInfo);
- extern void __fastcall SetFloatProp(System::TObject* Instance, PPropInfo PropInfo, Extended Value);
- extern System::Variant __fastcall GetVariantProp(System::TObject* Instance, PPropInfo PropInfo);
- extern void __fastcall SetVariantProp(System::TObject* Instance, PPropInfo PropInfo, const System::Variant
- &Value);
- extern Sysutils::TMethod __fastcall GetMethodProp(System::TObject* Instance, PPropInfo PropInfo);
- extern void __fastcall SetMethodProp(System::TObject* Instance, PPropInfo PropInfo, const Sysutils::TMethod
- &Value);
- //-- template instantiations -------------------------------------------------
- template class TParamFlags ;
- template class TTypeKinds ;
-
- } /* namespace Typinfo */
-
- #pragma warn .par
- #pragma warn .hid
- #pragma warn .inl
-
- #if !defined(NO_IMPLICIT_NAMESPACE_USE)
- using namespace Typinfo;
- #endif
- //-- end unit ----------------------------------------------------------------
- #endif // TypInfo
-